home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Mac Power 1997 December
/
MACPOWER-1997-12.ISO.7z
/
MACPOWER-1997-12.ISO
/
AMUG
/
PROGRAMMING
/
Raven 1.2 Examples.sit
/
Raven 1.2 Examples
/
Quill
/
Source
/
PaneEditor.h
< prev
next >
Wrap
Text File
|
1997-07-27
|
2KB
|
85 lines
/*
* File: PaneEditor.h
* Summary: A view that knows how to edit a TPane.
* Written by: Jesse Jones
*
* Copyright ゥ 1996 Jesse Jones.
* For conditions of distribution and use, see copyright notice in ZTypes.h
*
* Change History (most recent first):
*
* <-> 10/15/96 JDJ Created
*/
#pragma once
#include "BasePaneEditor.h"
// ===================================================================================
// class CPaneInfo
// ===================================================================================
struct CPaneInfo : public SPaneInfo {
string className;
CPaneInfo();
CPaneInfo(const SPaneInfo& paneInfo, const string& className);
};
// ===================================================================================
// CPaneEditor
// Can't use CBasePaneEditor because we're using CPaneInfo which is incompatible
// with mPane->GetInfo().
// ===================================================================================
class CPaneEditor : public CRootPaneEditor {
typedef CRootPaneEditor Inherited;
//-----------------------------------
// Initialization/Destruction
//
public:
virtual ~CPaneEditor();
CPaneEditor(TView* superView);
//-----------------------------------
// CBaseEditor API
//
public:
virtual void SetPane(TPane* pane);
virtual void Apply();
virtual void Commit(TMultipleUndoableCommand* command);
virtual void Revert();
//-----------------------------------
// TReanimator Support
//
public:
static MReanimatable* Create(MReanimatable* parent);
//-----------------------------------
// Internal API
//
protected:
CPaneInfo GetEditorInfo() const;
void SetEditorInfo(const CPaneInfo& info);
void SetPaneInfo(const CPaneInfo& info);
//-----------------------------------
// Member data
//
protected:
TPane* mPane;
CPaneInfo mOldInfo;
};